(function() {

	$.fn.mobileWeek = function(p) {

		var weekId = $(this).attr("id");
		if (!weekId) {
			console.error("week组件 缺少id。");
			return;
		}

		var defaultOpt = {
			defaultCodes : [ "Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday" ],
			defaultNames : [ "星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六" ],
			setText : '确定', // 确认按钮名称
			cancelText : '取消',// 取消按钮
			// 内部配置
			preset : 'select', // 日期
			theme : 'android', // 皮肤样式
			display : 'modal', // 显示方式
			mode: 'mixed' // 日期选择模式
		};

		var options = $.extend({}, defaultOpt, p);

		if (p) {
			if (p.defaultCodes == undefined) {
				options.defaultCodes = defaultOpt.defaultCodes;
			}
			if (p.defaultNames == undefined) {
				options.defaultNames = defaultOpt.defaultNames;
			}
		}

		// validate codes and names
		var codesLength = options.defaultCodes.length;
		var NamesLength = options.defaultNames.length;
		if (codesLength != NamesLength) {
			console.error("week组件初始化参数：defaultCodes与defaultNames长度不一致。");
		}

		// renderWeek
		var tempSelectId = "selectshow_temp_" + weekId;

		// 取值方法
		if (p == "getValue") {
			var value;
			value = $("#" + tempSelectId).val();
			return value;
		}

		// 去除重复
		if ($("#" + tempSelectId)) {
			$("#" + tempSelectId).remove();
			$("#" + tempSelectId + "_dummy").remove();
		}

		var select = $("<select data-role='week' id='" + tempSelectId + "' style='display:none;' >").insertBefore($("#" + weekId));
		var selectOpt = "";
		// var selectOpt = "<option>请选择</option>";
		for ( var i = 0; i < options.defaultCodes.length; i++) {
			selectOpt += "<option value='" + options.defaultCodes[i] + "'>" + options.defaultNames[i] + "</option>";
		}
		$("#" + tempSelectId).append(selectOpt);
		$("#" + tempSelectId).mobiscroll(options);

		$("#" + tempSelectId + "_dummy").hide();
		// show
		$("#" + weekId).bind("focus", function() {
			$("#" + tempSelectId).mobiscroll("show");
		});

		$("#" + tempSelectId).bind("change", function() {
			var value = $("#" + tempSelectId + '_dummy').val();
			$("#" + weekId).val(value);
		});
		// $("#selectshow_temp_dummy").val('');
	}
	
	
	
	//自动初始化
	
	$.mobile.document.bind("pagecreate create",function(e){
			var pagecontainer=$(e.target);
			$("input",pagecontainer).each(function(index,dom){
					var type = $(dom).attr("data-role");
					if (!type) {
						type = "text";
					}

					switch (type) {
					// case "date"等，略，可与其他自动初始化合并，减少each开销
					case "date":
						$(dom).mobiscroll(_nt_data_opt);
						break;
					case "datetime":
						$(dom).mobiscroll(_nt_data_opt1);
						break;
					case "time":
						$(dom).mobiscroll(_nt_data_opt2);
						break;
					case "week":
						$(dom).mobileWeek();
						break;
					}
			});
	});	





// 初始化日期控件
var _nt_data_opt = {
	preset : 'date', // 日期
	theme : 'android', // 皮肤样式
	display : 'modal', // 显示方式
	mode : 'mixed', // 日期选择模式
	dateFormat : 'yy-mm-dd', // 日期格式
	setText : '确定', // 确认按钮名称
	cancelText : '取消',// 取消按钮名籍我
	dateOrder : 'yymmdd', // 面板中日期排列格式
	dayText : '日',
	monthText : '月',
	yearText : '年', // 面板中年月日文字
	endYear : 2020,// 结束年份
	startYear : 1900
// 开始年份
};

var _nt_data_opt1 = {
	preset : 'datetime', // 日期时间
	theme : 'android', // 皮肤样式
	display : 'modal', // 显示方式
	mode : 'mixed', // 日期选择模式
	dateFormat : 'yy-mm-dd', // 日期格式
	setText : '确定', // 确认按钮名称
	cancelText : '取消',// 取消按钮名籍我
	dateOrder : 'yymmdd', // 面板中日期排列格式
	dayText : '日',
	monthText : '月',
	yearText : '年', // 面板中年月日文字
	hourText : '小时',
	minuteText : '分钟',
	endYear : 2020, // 结束年份
	startYear : 1900
// 开始年份
};

var _nt_data_opt2 = {
	preset : 'time', // 时间
	theme : 'android', // 皮肤样式
	display : 'modal', // 显示方式
	mode : 'mixed', // 日期选择模式
	setText : '确定', // 确认按钮名称
	cancelText : '取消',// 取消按钮名籍我
	hourText : '小时',
	minuteText : '分钟',
	timeFormat : 'H:ii',// 顶部时间显示格式
	timeWheels : 'H:ii' // 滑轮显示样式
};
})(jQuery);